Many different filtering and other processing techniques have been used to identify targets in photographs or other forms of digital data. Such techniques have been widely deployed in commercial, military, industrial and other settings. In a military setting, for example, digital imagery can be processed to identify the presence of patterns, objects of interest and/or other actual or potential targets represented within a digital dataset. Image processing techniques can allow for early detection of targets that might otherwise be difficult to detect visually. Target recognition techniques may also be used in other commercial or military settings, including aerospace and maritime environments (including underwater object detection), as well as in manufacturing and other industrial settings, commercial and personal photography, and in many other settings as well.
Generally speaking, it is desirable that target detection techniques be effective at identifying objects, be relatively fast, and be computationally efficient. In some applications, detecting targets can be a significant challenge due to the presence of gradients in the background imagery and/or the presence of multiple targets within a relatively close space. Gradients in a background, for example, can create significant contrast across even small portions of an image or other dataset that can complicate target detection, particularly when such contrasts are on the same order of magnitude as the target contrast and/or when the gradients change rapidly over time.
Sloping contrasts can often be managed using conventional linear filters (e.g., averaging filters). Averaging filters, however, are highly susceptible to erroneous results when other objects are present within the processed imagery. If a target is detected by virtue of being bright relative to the background imagery, for example, the presence of additional bright objects in the processed imagery will create undesired bias in an averaging filter. That is, abnormally high or low values resulting from additional targets or other clutter can have a disproportionate effect on an average filter, thereby skewing the output of the filter away from the desired result.
Certain types of non-linear filters (e.g., median filters that simply identify the center rank order of the filtered values) can reduce the effects of outlying data values due to the nature of the median function. Due to the nature of the median function, median filters can be effective in reducing the effects of high or low magnitude noise. Conventional median fillers, however, can have greater sensitivity to certain variations in the data, such as sloping backgrounds, than some other types of filters.
Both mean and median-based functions can be supplemented with various data compensation techniques to improve results, but such techniques have traditionally been computationally demanding, thereby limiting their usefulness in real time (or near real time) applications, or in applications that may have limited availability of computing resources.
It is therefore desirable to create data processing systems and techniques that are effective, yet computationally manageable. It is further desirable for such systems and techniques to reliably identify targets even in datasets with sloping backgrounds and/or with clutter from other targets is present within the processed data. These and other desirable features and characteristics will become apparent from the subsequent detailed description and the appended claims, taken in conjunction with the accompanying drawings and this background section.